Portable computing device for wireless communications and method of operation

ABSTRACT

In one embodiment of the present invention, a portable computing device for wireless communications comprises a first network interface for communicating with a public wireless wide area network (WWAN), a second network interface for communicating with a private wireless local area network (WLAN), and a processor executing under control of software instructions, the software instructions defining a gateway protocol, the gateway protocol establishing the portable computing device as an access point within the private WLAN after the wireless presence on the public WWAN is established.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 12/972,592, filed Dec. 20, 2010, which is a continuation of U.S. patent application Ser. No. 10/861,846, filed Jun. 4, 2004, now U.S. Pat. No. 7,881,267, issued Feb. 1, 2011, the content of which is hereby incorporated by reference.

FIELD OF THE INVENTION

The present invention is directed to wireless communications.

DESCRIPTION OF RELATED ART

A number of wireless communication protocols enable mobile or portable computing devices to conduct network communications. For example, wireless fidelity (“Wi-Fi”) products enable wireless communication, often referred to as wireless local area networks (WLAN), using the IEEE 802.11b protocol. The 802.11b protocol defines the physical and medium access control layers of the communication protocol. The physical layer refers to characteristics associated with the wireless transmission of data (i.e., using direct spread spectrum processing, frequency hopping, or infrared (IR) pulse modulation for the 802.11b standard). The medium access control layer refers to the techniques that maintain order within the shared communication medium to prevent networked devices from interfering with each other's communications.

According to the 802.11b communication protocol, two types of wireless communication networks are possible. In the first type, an “ad-hoc” wireless communication network is formed. Specifically, when a number of wireless-capable devices are within communication range, the wireless communication devices “elect” one of the devices as the base station and the other devices act as slaves to the base station. The base station manages the communication within the wireless network. In the second type, an infrastructure model is employed wherein at least one access point is employed. An access point is a fixed wireless capable device that is also coupled to a wired network. The wired network may enable communication with other resources such as file servers, printers, and/or the like or may enable communication through other larger networks such as the Internet.

Another wireless communication protocol is the general packet radio service (GPRS) protocol. Communication using the GPRS protocol occurs through public wireless cellular systems (e.g., global system for mobile (GSM) communications networks) to provide wireless wide area networks (WWAN). A device that attempts to communicate using the GPRS protocol establishes its presence within a cell of an appropriate network by registering with the network through a base station. The base station is coupled to the cellular infrastructure and routes packets to and from the wireless device.

The foregoing WLANs and WWANs provide various different features and advantages. For example, WLAN interfaces are often relatively inexpensive and use low power, facilitating their implementation in a wide variety of devices, including handheld computers, portable computers, printers, dedicated-purpose devices, etcetera. WWAN interfaces provide extended range communication links, such as throughout a metropolitan area, facilitating access to a large number of resources and information. Such resources and information are unavailable to users of a WLAN without the use of one of the aforementioned fixed access points employing a wired network connection.

SUMMARY

In one embodiment of the present invention, a portable computing device for wireless communications comprises a first network interface for communicating with a public wireless wide area network (WWAN), a second network interface for communicating with a private wireless local area network (WLAN), and a processor executing under control of software instructions, the software instructions defining a gateway protocol, the gateway protocol establishing the portable computing device as an access point within the private WLAN after the wireless presence on the public WWAN is established.

In another embodiment of the present invention, a method for wireless communications comprises detecting entry into a service area of a public wireless wide area network (WWAN) by a portable computing device, and establishing a private wireless local area network (WLAN) by the portable computing device, wherein the portable computing device performs at least one access point service for said private WLAN.

In another embodiment of the present invention, a system for wireless communications comprises, means for registering with a public wireless wide area network (WWAN) to transmit and receive communication packets after detection of entry into a service area of the public WWAN and means for establishing access point services for a private wireless local area network (WLAN), wherein the means for establishing operates in response to the means for registering.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1A and 1B depict example portable computing devices according to representative embodiments.

FIG. 2 depicts an example communication system according to one representative embodiment.

FIG. 3 depicts an example flowchart for managing wireless communications according to one representative embodiment.

DETAILED DESCRIPTION

Referring now to the drawings, FIG. 1A depicts portable computing device 100 according to representative embodiments. Portable computing device 100 includes processor 101, wireless wide area network (WWAN) interface(s) 102, and wireless local area network (WLAN) interface(s) 103. Suitable commercially available WWAN interfaces include, but are not limited to, GPRS interfaces, code division multiple access (CDMA) 1×RTT interfaces, CDMA 1×EVDO interfaces, 802.16 (WiMax) interfaces, wireless broadband interfaces, and the like. Suitable commercially available WLAN interfaces include, but are not limited to, 802.11b interfaces, 802.11a interfaces, 802.11g interfaces. For the purposes of the following description, the term WLAN is also used to refer to other communication mechanisms possessing limited communication ranges, e.g., personal area Bluetooth networks, personal area Ultra Wideband (UWB) networks, and/or the like.

Portable computing device 100 may be implemented in the form of a personal digital assistant (PDA), a notebook computer, or other portable computing platform. Suitable commercially available PDAs that comprise WWAN and WLAN interfaces include iPAQ™ Pocket PCs available from Hewlett-Packard Company, without implementation embodiments of the present invention such PDAs do not provide connectivity between the WWAN and WLAN interfaces. Alternatively, cellular telephones or other wireless devices that include appropriate processing capabilities and wireless interfaces may be used to implement representative embodiments.

Processor 101 operates under the control of executable instructions or code. The executable instructions or code may be stored in non-volatile memory 104 which is any suitable computer-readable medium. For example, gateway and related communication protocols 105 are stored in non-volatile memory 104. When portable computing device 100 is initially located within a cell or service area of a WWAN, portable computing device 100, under the control of protocols 105, attempts to establish a presence in the WWAN. The establishment of a presence within the WWAN may include detecting a digital control channel associated with the WWAN. The digital control channel enables portable computing device 100 to communicate with a base station associated with the cell or service area. By communicating with the base station, portable computing device 100 registers with routing services of the WWAN. For example, portable computing device 100 registers its location with a visiting location registry and/or a home location register to facilitate the routing of packets to portable computing device 100 according to the mobile Internet Protocol as an example. After registering its location within the WWAN, portable computing device 100 may communicate with various resources via the Internet using the GPRS functionality of the WWAN.

After portable computing device 100 establishes a presence within a WWAN, portable computing device 100, under the control of protocols 105, establishes a WLAN. In one embodiment, portable computing device 100 establishes itself as an “access point” according to the 802.11b standard. Portable computing device 100 may access a cache of permitted device identifiers 106 to limit access to the established WLAN. Furthermore, portable computing device 100 provides gateway functionality to other wireless communication devices within the established WLAN. Specifically, portable computing device 100 receives packets from the wireless communication devices in the WLAN and routes the packets to resources available via the Internet using the WWAN. Portable computing device 100 provides other communication functionality to facilitate the routing of packets such as network address translation (NAT), dynamic host configuration protocol (DHCP), firewall functionality, virtual private networking (VPN) functionality, content filtering functionality, and/or the like.

Although the functionality of protocols 105 has been described as being implemented using software instructions executed by processor 101, other embodiments may employ other implementations. For example, a suitable application specific integrated circuit (ASIC) or circuits (shown as ASIC 107 in FIG. 1B) may be used to implement protocols 105 according to one representative embodiment. Also, although embodiments are described as using a single WLAN network, protocols 105 may control multiple WLAN interfaces 102 simultaneously. For example, protocols 105 may establish a Bluetooth WLAN and a 802.11b WLAN operating in the same local area.

FIG. 2 depicts communication system 200 according to one representative embodiment. Communication system 200 comprises portable computing device 100. Portable computing device 100 is established within a cell or service area of WWAN 202. Portable computing device 100 communicates with resources on the Internet using WWAN infrastructure 204.

Portable computing device 100 acts as an access point for WLAN 201 to thereby provide an access point that is neither fixed in location (i.e., is portable) nor relies on wireline links for wide area communications. Furthermore, portable computing device 100 may authenticate or otherwise limit which devices may communicate within WLAN 201 to establish a private network. Wireless devices 203 within WLAN 201 may be implemented using a variety of computing devices such as desktop computers, laptop computers, personal digital assistants, and/or the like. Wireless devices 203 may include integrated WLAN interfaces or removable WLAN cards. Wireless devices 203 may communicate with resources available on the Internet by routing packets through portable computing device 100. Wireless devices 203 may communicate with each other using the wireless management functionality of portable computing device 100. Alternatively, wireless devices 203 may communicate with shared resources (e.g., printer 205) using the wireless management functionality of portable computing device 100.

FIG. 3 depicts a flowchart for managing wireless communications according to one representative embodiment by establishing a gateway protocol useful in facilitating WWAN connectivity with respect to a WLAN implementation. In block 301, a WWAN network is detected by mobile computing device 100. For example, mobile computing device 100 detects the digital control channel of a GSM cellular network or other network control channel. In block 302, mobile computing device 100 authenticates and registers with the WWAN network. The authentication may occur by communicating an electronic serial number, mobile serial number, challenge and response packets, and/or the like. After authentication and registration, mobile computing device 100 is established within the WWAN and is ready to communicate packets. Accordingly, the illustrated embodiment provides autonomous data interfacing with the WWAN when detected, or as otherwise desired by a user, thereby establishing a wireless presence on the WWAN.

In block 303, a private WLAN is established by mobile computing device 100. For example, mobile computing device 100 may begin broadcasting a beacon frame. In the 802.11b standard, the beacon frame enables wireless communication devices to locate and join a “basic services set” or (a set of devices communicating according to the wireless protocol). Additionally, mobile computing device 100 may respond to “probe request” frames according to the 802.11b standard. The probe request enables wireless communication devices to identify an access point associated with an infrastructure basic service set. Probe requests are employed to enable a wireless device to join an infrastructure basic services set in a more efficient manner than waiting for the transmission of a beacon frame.

In block 304, a request, such as may include an identifier of a requesting wireless device, is received by mobile computing device 100 from a wireless device to join the WLAN. In block 305, at least one authentication frame is communicated between mobile computing device 100 and the requesting wireless device. In the 802.11b standard, authentication is performed using a multi-frame exchange using an authentication algorithm number, authentication transaction sequence number, a status code, and challenge text. In block 306, a logical determination is made to determine whether the requesting wireless device is identified within permitted device identifiers 106, such as by comparing an identifier of a requesting wireless device with identifiers stored in a memory of mobile computing device 100. If not, the wireless device is not allowed to join the WLAN and the process flow returns to block 304 to receive further requests. If the wireless device is identified within permitted device identifiers 106, the process flow proceeds to block 307 where the requesting wireless device is allowed to join the WLAN.

In block 308, Internet Protocol (IP) packet communication for the wireless device is enabled. For example, after joining the WLAN, the wireless device may broadcast a DHCP discovery packet. Procotols 105 of mobile computing device 100 may comprise a DHCP server that responds to broadcast discovery packets. Specifically, the DHCP server “leases” an IP address to the wireless device to enable packet communication. Using the assigned IP address, mobile computing device 100 routes packets to and from Internet resources for the wireless communication device and/or other devices of the WLAN using the WWAN, thereby providing gateway functionality such that mobile computing device 100 is established as an access point on said WLAN after a wireless presence on the WWAN is established. Mobile computing device 100 may perform other functionality such as network address translation, firewall filtering, virtual private networking, content filtering, and/or the like.

One or more of the foregoing functions may be performed in an order different than that set forth with respect to the embodiment of FIG. 3 described above. For example, one or more functions may be performed simultaneously, such as to provide a desired level of reliability and/or responsiveness, according to embodiments of the invention.

Representative embodiments may be used for a variety of applications. For example, portable computing device 100 may be used by groups of professionals that perform services in remote locations. For example, mobile accounting teams frequently set up temporary offices in facilities belonging to their clients. Mobile computing device 100 may be used by such teams to establish a local area network for the team members at client facilities. Moreover, mobile computing device 100 may be used by the teams to communicate with servers associated with the main office of the mobile teams. Representative embodiments offer a number of advantages in this type of situation. By employing representative embodiments, the local area network can be set up and removed in an efficient manner without employing wired technology. Additionally, every device belonging to the team members does not necessarily possess the hardware used for WWAN communication. By providing the WWAN functionality within a limited number of mobile computing devices 100, management of user accounts associated with the public wireless network may be managed in an efficient manner. 

What is claimed is:
 1. A portable computing device, comprising: a first network interface and a second network interface; a processor; and a non-volatile memory storing software instructions to, when executed by the processor: establish a first connection to a public wireless network using the first network interface; subsequent to establishing the first connection, establish the portable computing device as an access point for a private wireless network; in response to an authentication of a remote device to join the private wireless network, establish a second connection to the remote device using the second network interface; and route communication packets between the remote device and the public wireless network using the first network interface and the second network interface, wherein the first connection and the second connection are maintained while the communication packets are routed.
 2. The portable computing device of claim 1, wherein the software instructions are further to: authenticate the remote device using a unique identifier of the remote device.
 3. The portable computing device of claim 2, wherein the software instructions are further to: authenticate the remote device by comparing the unique identifier of the remote device to a list of identifiers stored in the non-volatile memory of the portable computing device.
 4. The portable computing device of claim 1, wherein the software instructions are further to: subsequent to establishing the first connection, broadcast a beacon message for other devices.
 5. The portable computing device of claim 1, wherein the first connection is automatically established when the portable computing device is located within a service area of the public wireless network.
 6. The portable computing device of claim 1 wherein the public wireless network is provided by a cellular telephone network.
 7. The portable computing device of claim 1 wherein the private wireless network implements the 802.11 communication standard.
 8. A method, comprising: establishing, by a portable computing device, a first connection to a public wireless network using a first network interface; subsequent to establishing the first connection, establishing a private wireless network by the portable computing device, the portable computing device providing an access point for the private wireless network; upon authenticating a remote device, establishing, by the portable computing device, a second connection to the remote device using a second network interface; and routing communication packets between the remote device and the public wireless network using the first network interface and the second network interface, wherein the first connection and the second connection are maintained while the communication packets are routed.
 9. The method of claim 8, further comprising: authenticating the remote device based on a unique identity of the remote device.
 10. The method of claim 9, further comprising: authenticating the remote device by comparing the unique identity of the remote device to a list of identifiers stored in a non-volatile memory of the portable computing device.
 11. The method of claim 8, further comprising: after establishing the first connection, broadcasting a beacon message for other devices.
 12. The method of claim 8, further comprising: automatically establishing the first connection in response to a determination that the portable computing device is located within a service area of the public wireless network.
 13. The method of claim 8, further comprising: receiving, by the portable computing device, a dynamic host configuration protocol (DHCP) request from the remote device.
 14. The method of claim 8, further comprising: responding, by the portable computing device, to a probe request to identify the portable computing device as an access point for the private wireless network.
 15. An article comprising a non-transitory machine-readable storage medium storing software instructions that, when executed by a processor of a portable computing device, cause the processor to: establish a first connection to a public wireless network using a first network interface of the portable computing device; subsequent to establishing the first connection, establish the portable computing device as an access point for a private wireless network; in response to an authentication of a remote device to join the private wireless network, establish a second connection to the remote device using a second network interface of the portable computing device; and route communication packets between the remote device and the public wireless network using the first network interface and the second network interface, wherein the first connection and the second connection are maintained while the communication packets are routed.
 16. The article of claim 15, wherein the software instructions are further to: authenticate the remote device using a unique identifier of the remote device.
 17. The article of claim 16, wherein the software instructions are further to: authenticate the remote device based on a comparison of the unique identifier of the remote device to a list of identifiers stored in a non-volatile memory of the portable computing device.
 18. The article of claim 15, wherein the software instructions are further to: upon establishing the first connection, broadcast a beacon message for other devices.
 19. The article of claim 15, wherein the first connection is automatically established when the portable computing device is located within a service range of the public wireless network.
 20. The article of claim 15, wherein the software instructions are further to: respond to a probe request from the remote device to identify the portable computing device as an access point for the private wireless network. 